<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>2_受控组件</title>
</head>
<body>
  <!-- 准备好一个“容器” -->
  <div id="test"></div>

  <!-- 引入react核心库 -->
  <script type="text/javascript" src="../js/react.development.js"></script>
  <!-- 引入react-dom，用于支持react操作DOM -->
  <script type="text/javascript" src="../js/react-dom.development.js"></script>
  <!-- 引入babel，用于将jsx转为js -->
  <script type="text/javascript" src="../js/babel.min.js"></script>

  <!-- 此处一定要写babel -->
  <script type="text/babel">
    // 1. 创建组件
    class Login extends React.Component {

      // 初始化状态
      state= {
        username: '',
        password: ''
      }
      // 保存用户名到状态
      saveUsername = (event) => {
        this.setState({username: event.target.value})
      }

      savePassword = (event) => {
        this.setState({password: event.target.value})
      }
      // 表单提交的回调
      handleSubmit = (event) => {
        event.preventDefault() // 阻止表单提交
        const {username, password} = this.state
        alert(`你输入的用户名是：${username},你输入的密码是：${password}`)
      }

      render() {
        return (
          <form onSubmit={this.handleSubmit}>
              用户名：<input onChange={this.saveUsername} type="text" name="username" />
              密码：<input onChange={this.savePassword} type="password" name="password"/>
              <button>登录</button>
          </form>
        )
      }
    }
    // 2. 渲染组件到页面
    ReactDOM.render(<Login />, document.getElementById('test'))
  </script>
</body>
</html>